//package com.wgj.android.accesslibility.service;
//import android.accessibilityservice.AccessibilityServiceInfo;
//import android.annotation.TargetApi;
//import android.content.Context;
//import android.content.Intent;
//import android.os.Build;
//import android.util.Log;
//import android.view.accessibility.AccessibilityEvent;
//import android.view.accessibility.AccessibilityManager;
//import android.widget.Toast;
//import com.wgj.android.BuildConfig;
//import com.wgj.android.accesslibility.IStatusBarNotification;
//import com.wgj.android.accesslibility.config.WXQiangHongBaoConfig;
//import com.wgj.android.accesslibility.job.BaseAccessbilityJob;
//
//
//import java.io.FileDescriptor;
//import java.io.PrintWriter;
//import java.util.ArrayList;
//import java.util.HashMap;
//import java.util.Iterator;
//import java.util.List;
//
///**
// * ========================================
// * 作    者： 佳爱网络有限公司(wwww.jiaailove.com)
// * 版    本： 1.0
// * 创建日期：  2017/11/14
// * 描    述：  抢红包外挂服务
// * 修订历吏：
// * =========================================
// */
//public class WXQiangHongBaoService extends BaseAccesslibilityServier {
//
//    private static final String TAG = "QiangHongBao";
//
//    private static final Class[] ACCESSBILITY_JOBS= {
//            WXQiangHongBaoAccessbilityJob.class,
//    };
//
//    private static WXQiangHongBaoService service;
//
//    private List<BaseAccessbilityJob> mAccessbilityJobs;
//    private HashMap<String, BaseAccessbilityJob> mPkgAccessbilityJobMap;
//
//
//
//    @Override
//    public void onCreate() {
//        super.onCreate();
//
//        mAccessbilityJobs = new ArrayList<>();
//        mPkgAccessbilityJobMap = new HashMap<>();
//
//        //初始化辅助插件工作
//        for(Class clazz : ACCESSBILITY_JOBS) {
//            try {
//                Object object = clazz.newInstance();
//                if(object instanceof BaseAccessbilityJob) {
//                    BaseAccessbilityJob job = (BaseAccessbilityJob) object;
//                    job.onCreateJob(this);
//                    mAccessbilityJobs.add(job);
//                    mPkgAccessbilityJobMap.put(job.getTargetPackageName(), job);
//                }
//            } catch (Exception e) {
//                e.printStackTrace();
//            }
//        }
//    }
//
//    @Override
//    public void onDestroy() {
//        super.onDestroy();
//        Log.d(TAG, "qianghongbao service destory");
//        if(mPkgAccessbilityJobMap != null) {
//            mPkgAccessbilityJobMap.clear();
//        }
//        if(mAccessbilityJobs != null && !mAccessbilityJobs.isEmpty()) {
//            for (BaseAccessbilityJob job : mAccessbilityJobs) {
//                job.onStopJob();
//            }
//            mAccessbilityJobs.clear();
//        }
//
//        service = null;
//        mAccessbilityJobs = null;
//        mPkgAccessbilityJobMap = null;
//        //发送广播，已经断开辅助服务
//        Intent intent = new Intent(WXQiangHongBaoConfig.ACTION_QIANGHONGBAO_SERVICE_DISCONNECT);
//        sendBroadcast(intent);
//    }
//
//    @Override
//    public void onInterrupt() {
//        Log.d(TAG, "qianghongbao service interrupt");
//        Toast.makeText(this, "中断抢红包服务", Toast.LENGTH_SHORT).show();
//    }
//
//    @Override
//        protected void onServiceConnected() {
//        super.onServiceConnected();
//        service = this;
//        //发送广播，已经连接上了
//        Intent intent = new Intent(WXQiangHongBaoConfig.ACTION_QIANGHONGBAO_SERVICE_CONNECT);
//        sendBroadcast(intent);
//        Toast.makeText(this, "已连接抢红包服务", Toast.LENGTH_SHORT).show();
//    }
//    @Override
//    public void onAccessibilityEvent(AccessibilityEvent event) {
//        if(BuildConfig.DEBUG) {
//            Log.d(TAG, "事件--->" + event );
//        }
//        String pkn = String.valueOf(event.getPackageName());
//        if(mAccessbilityJobs != null && !mAccessbilityJobs.isEmpty()) {
//            for (BaseAccessbilityJob job : mAccessbilityJobs) {
//                if(pkn.equals(job.getTargetPackageName()) && job.isEnable()) {
//                    job.onReceiveJob(event);
//                }
//            }
//        }
//    }
//
//
//    /** 接收通知栏事件*/
//    @TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR2)
//    public static void handeNotificationPosted(IStatusBarNotification notificationService) {
//        if(notificationService == null) {
//            return;
//        }
//        if(service == null || service.mPkgAccessbilityJobMap == null) {
//            return;
//        }
//        String pack = notificationService.getPackageName();
//        BaseAccessbilityJob job = service.mPkgAccessbilityJobMap.get(pack);
//        if(job == null) {
//            return;
//        }
//        job.onNotificationPosted(notificationService);
//    }
//
//    /**
//     * 判断当前服务是否正在运行
//     * */
//    @TargetApi(Build.VERSION_CODES.JELLY_BEAN)
//    public static boolean isRunning() {
//        if(service == null) {
//            return false;
//        }
//        AccessibilityManager accessibilityManager = (AccessibilityManager) service.getSystemService(Context.ACCESSIBILITY_SERVICE);
//        AccessibilityServiceInfo info = service.getServiceInfo();
//        if(info == null) {
//            return false;
//        }
//        List<AccessibilityServiceInfo> list = accessibilityManager.getEnabledAccessibilityServiceList(AccessibilityServiceInfo.FEEDBACK_GENERIC);
//        Iterator<AccessibilityServiceInfo> iterator = list.iterator();
//        boolean isConnect = false;
//        while (iterator.hasNext()) {
//            AccessibilityServiceInfo i = iterator.next();
//            if(i.getId().equals(info.getId())) {
//                isConnect = true;
//                break;
//            }
//        }
//        if(!isConnect) {
//            return false;
//        }
//        return true;
//    }
//
//    /** 快速读取通知栏服务是否启动*/
//    public static boolean isNotificationServiceRunning() {
//        if(Build.VERSION.SDK_INT < Build.VERSION_CODES.JELLY_BEAN_MR2) {
//            return false;
//        }
//        //部份手机没有NotificationService服务
//        try {
//            return WXQHBNotificationService.isRunning();
//        } catch (Throwable t) {}
//        return false;
//    }
//
//    @Override
//    public void onStart(Intent intent, int startId) {
//        super.onStart(intent, startId);
//    }
//
//    @Override
//    public boolean onUnbind(Intent intent) {
//        return super.onUnbind(intent);
//    }
//
//    @Override
//    public void onRebind(Intent intent) {
//        super.onRebind(intent);
//    }
//
//    @Override
//    public void onTaskRemoved(Intent rootIntent) {
//        super.onTaskRemoved(rootIntent);
//    }
//
//    @Override
//    protected void dump(FileDescriptor fd, PrintWriter writer, String[] args) {
//        super.dump(fd, writer, args);
//    }
//}
